.object-info {
	display: flex;
	justify-content: space-between;
	align-items: center;

	.objectid {
		font-size: 1.2em;
	}

	.date {
		margin-left: 20px;
		font-size: 0.7em;
		color: var(--text-darker);
	}

	.actions {
		display: none;

		& > .btn {
			margin-left: 10px;
			padding: 2px 5px 0;
		}
	}
}

:host:hover .object-info .actions {
	display: initial;
}

.editor {
	display: none;
	position: absolute;
	height: 100%;
	z-index: 100;
	width: 100%;
	top: 0;

	&.visible {
		display: block;
	}
}

.editor-actions {
	position: absolute;
	z-index: 10;
	right: 20px;
	top: 15px;

	& > .btn {
		margin-left: 10px;
		padding: 2px 5px 0;
	}
}

.remove-layer {
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 5px;
	background: var(--text-inverse);
	opacity: 0.7;

	p {
		color: var(--text);
		text-align: center;
		margin-top: 20px;
		font-size: 2em;
	}

	.remove-actions {
		position: absolute;
		width: 100%;
		height: 100%;
		top: 0;
		display: flex;
		justify-content: center;
		align-items: center;

		.btn { margin: 20px; }
	}
}

.pretty-json {
	font-family: 'Source Code Pro',monospace;
	position: relative;
	white-space: pre;
	font-size: 0.9em;
	padding: 0 22px 22px;

	display: block; // For line-height below
	line-height: 1.3;

	.null {
		color: var(--code-null);
	}
	.boolean {
		color: var(--code-boolean);
	}

	.number {
		color: var(--code-numbers);
	}

	.quoted {
		color: var(--code-string);

		.string {
			color: var(--code-string);
			a:link, a:visited {
				color: var(--code-string);
				text-decoration: underline;
			}
			a:hover, a:active {
				color: var(--code-links);
			}
		}
	}

	.regexp {
		color: var(--code-regexp);
	}

	.function {
		color: var(--code-function);
	}

	var {
		color: var(--code-namespace);
		font-style: normal;
	}

	.prop {
		position: relative;

		.e {
			display: none;
			cursor: pointer;

			.summary, q {
				color: var(--code-summary);
				font-style: italic;
			}
		}

		.collapser, button {
			display: block;
			cursor: pointer;
			position: absolute;
			height: 16px;
			width: 16px;
			left: -20px;
			top: 2px;
			padding: 0;
			font-size: 0;
			line-height: 0;
			color: transparent;
			overflow: hidden;

			&:after {
				display: block;
				position: absolute;
				left: 4px;
				top: 6px;
				height: 0;
				width: 0;
				content: ' ';

				border: 4px solid transparent;
				border-top-color: var(--text);
			}
			&:hover:after, &:active:after {
				border-top-color: var(--text);
			}
		}

		button {
			border: none;
			background-color: transparent;
		}

		&.collapsed {
			button {
				&:after {
					left: 6px;
					top:  4px;

					border-top-color: transparent;
					border-left-color: var(--text)
				}
				&:hover:after, &:active:after {
					border-top-color: transparent;
					border-left-color: var(--text);
				}
			}
			.e {
				display: inline;
			}
			.collapser,
			.c {
				&:after {
					top:  4px;

					border-top-color:  transparent;
					border-left-color: var(--text);
				}
				&:hover, &:active {
					&:after {
						border-top-color:  transparent;
						border-left-color: var(--text);
					}
				}
			}

			> .value {
				height: 0px;
				width: 0px;
				overflow: hidden;
				display: inline-block;
				visibility: hidden;
			}
		}
	}
}
